home *** CD-ROM | disk | FTP | other *** search
/ CICA 1993 April / CICA MS Windows - April 1993.iso / unzipped / util / mews11 / ebind.h < prev    next >
Text File  |  1992-03-09  |  13KB  |  365 lines

  1. /*    EBIND:        Initial default key to function bindings for
  2.             MicroEMACS 3.10
  3. */
  4.  
  5. /*
  6.  * Command table.
  7.  * This table  is *roughly* in ASCII order, left to right across the
  8.  * characters of the command. This explains the funny location of the
  9.  * control-X commands.
  10.  */
  11. NOSHARE KEYTAB    keytab[NBINDS] = {
  12.     {CTRL|'A',        BINDFNC,    gotobol},
  13.     {CTRL|'B',        BINDFNC,    backchar},
  14.     {CTRL|'C',        BINDFNC,    insspace},
  15.     {CTRL|'D',        BINDFNC,    forwdel},
  16.     {CTRL|'E',        BINDFNC,    gotoeol},
  17.     {CTRL|'F',        BINDFNC,    forwchar},
  18.     {CTRL|'G',        BINDFNC,    ctrlg},
  19.     {CTRL|'H',        BINDFNC,    backdel},
  20.     {CTRL|'I',        BINDFNC,    tab},
  21.     {CTRL|'J',        BINDFNC,    indent},
  22.     {CTRL|'K',        BINDFNC,    killtext},
  23.     {CTRL|'L',        BINDFNC,    refresh},
  24.     {CTRL|'M',        BINDFNC,    newline},
  25.     {CTRL|'N',        BINDFNC,    forwline},
  26.     {CTRL|'O',        BINDFNC,    openline},
  27.     {CTRL|'P',        BINDFNC,    backline},
  28.     {CTRL|'Q',        BINDFNC,    quote},
  29.     {CTRL|'R',        BINDFNC,    backsearch},
  30.     {CTRL|'S',        BINDFNC,    forwsearch},
  31.     {CTRL|'T',        BINDFNC,    twiddle},
  32.     {CTRL|'U',        BINDFNC,    unarg},
  33.     {CTRL|'V',        BINDFNC,    forwpage},
  34.     {CTRL|'W',        BINDFNC,    killregion},
  35.     {CTRL|'X',        BINDFNC,    cex},
  36.     {CTRL|'Y',        BINDFNC,    yank},
  37.     {CTRL|'Z',        BINDFNC,    backpage},
  38.     {CTRL|'[',        BINDFNC,    meta},
  39.     {CTLX|CTRL|'A',        BINDFNC,    fileapp},
  40.     {CTLX|CTRL|'B',     BINDFNC,    listbuffers},
  41.     {CTLX|CTRL|'C',     BINDFNC,    quit},
  42.     {CTLX|CTRL|'D',     BINDFNC,    detab},
  43.     {CTLX|CTRL|'E',     BINDFNC,    entab},
  44.     {CTLX|CTRL|'F',     BINDFNC,    filefind},
  45.     {CTLX|CTRL|'I',     BINDFNC,    insfile},
  46.     {CTLX|CTRL|'K',        BINDFNC,    macrotokey},
  47.     {CTLX|CTRL|'L',     BINDFNC,    lowerregion},
  48.     {CTLX|CTRL|'M',     BINDFNC,    delmode},
  49.     {CTLX|CTRL|'N',     BINDFNC,    mvdnwind},
  50.     {CTLX|CTRL|'O',     BINDFNC,    deblank},
  51.     {CTLX|CTRL|'P',     BINDFNC,    mvupwind},
  52.     {CTLX|CTRL|'R',     BINDFNC,    fileread},
  53.     {CTLX|CTRL|'S',     BINDFNC,    filesave},
  54.     {CTLX|CTRL|'T',     BINDFNC,    trim},
  55.     {CTLX|CTRL|'U',     BINDFNC,    upperregion},
  56.     {CTLX|CTRL|'V',     BINDFNC,    viewfile},
  57.     {CTLX|CTRL|'W',     BINDFNC,    filewrite},
  58.     {CTLX|CTRL|'X',     BINDFNC,    swapmark},
  59.     {CTLX|CTRL|'Z',     BINDFNC,    shrinkwind},
  60.     {CTLX|'?',        BINDFNC,    deskey},
  61.     {CTLX|'!',        BINDFNC,    spawn},
  62.     {CTLX|'@',        BINDFNC,    pipecmd},
  63.     {CTLX|'#',        BINDFNC,    filter},
  64.     {CTLX|'$',        BINDFNC,    execprg},
  65.     {CTLX|'=',        BINDFNC,    showcpos},
  66.     {CTLX|'(',        BINDFNC,    ctlxlp},
  67.     {CTLX|')',        BINDFNC,    ctlxrp},
  68.     {CTLX|'<',        BINDFNC,    narrow},
  69.     {CTLX|'>',        BINDFNC,    widen},
  70.     {CTLX|'^',        BINDFNC,    enlargewind},
  71.     {CTLX|' ',        BINDFNC,    remmark},
  72.     {CTLX|'0',        BINDFNC,    delwind},
  73.     {CTLX|'1',        BINDFNC,    onlywind},
  74.     {CTLX|'2',        BINDFNC,    splitwind},
  75.     {CTLX|'A',        BINDFNC,    setvar},
  76.     {CTLX|'B',        BINDFNC,    usebuffer},
  77.     {CTLX|'C',        BINDFNC,    spawncli},
  78. #if    BSD || VMS || SUN || HPUX || AVIION
  79.     {CTLX|'D',        BINDFNC,    bktoshell},
  80. #endif
  81.     {CTLX|'E',        BINDFNC,    ctlxe},
  82.     {CTLX|'F',        BINDFNC,    setfillcol},
  83. #if    DEBUGM
  84.     {CTLX|'G',        BINDFNC,    dispvar},
  85. #endif
  86.     {CTLX|'K',        BINDFNC,    killbuffer},
  87.     {CTLX|'M',        BINDFNC,    setmod},
  88.     {CTLX|'N',        BINDFNC,    filename},
  89.     {CTLX|'O',        BINDFNC,    nextwind},
  90.     {CTLX|'P',        BINDFNC,    prevwind},
  91. #if    ISRCH
  92.     {CTLX|'R',        BINDFNC,    risearch},
  93.     {CTLX|'S',        BINDFNC,    fisearch},
  94. #endif
  95.     {CTLX|'W',        BINDFNC,    resize},
  96.     {CTLX|'X',        BINDFNC,    nextbuffer},
  97.     {CTLX|'Y',        BINDFNC,    cycle_ring},
  98.     {CTLX|'Z',        BINDFNC,    enlargewind},
  99.     {META|CTRL|'C',     BINDFNC,    wordcount},
  100.     {META|CTRL|'E',     BINDFNC,    execproc},
  101.     {META|CTRL|'F',     BINDFNC,    getfence},
  102.     {META|CTRL|'G',     BINDFNC,    gotomark},
  103.     {META|CTRL|'H',     BINDFNC,    delbword},
  104.     {META|CTRL|'K',     BINDFNC,    unbindkey},
  105.     {META|CTRL|'L',     BINDFNC,    reposition},
  106.     {META|CTRL|'M',     BINDFNC,    delgmode},
  107.     {META|CTRL|'N',     BINDFNC,    namebuffer},
  108.     {META|CTRL|'R',     BINDFNC,    qreplace},
  109.     {META|CTRL|'S',     BINDFNC,    execfile},
  110.     {META|CTRL|'V',     BINDFNC,    nextdown},
  111.     {META|CTRL|'W',     BINDFNC,    killpara},
  112.     {META|CTRL|'X',     BINDFNC,    execcmd},
  113.     {META|CTRL|'Y',        BINDFNC,    clear_ring},
  114.     {META|CTRL|'Z',     BINDFNC,    nextup},
  115.     {META|' ',        BINDFNC,    setmark},
  116.     {META|'?',        BINDFNC,    help},
  117.     {META|'!',        BINDFNC,    reposition},
  118.     {META|')',        BINDFNC,    indent_region},
  119.     {META|'(',        BINDFNC,    undent_region},
  120.     {META|'.',        BINDFNC,    setmark},
  121.     {META|'>',        BINDFNC,    gotoeob},
  122.     {META|'<',        BINDFNC,    gotobob},
  123.     {META|'~',        BINDFNC,    unmark},
  124.     {META|'A',        BINDFNC,    apro},
  125.     {META|'B',        BINDFNC,    backword},
  126.     {META|'C',        BINDFNC,    capword},
  127.     {META|'D',        BINDFNC,    delfword},
  128. #if    CRYPT
  129.     {META|'E',        BINDFNC,    setekey},
  130. #endif
  131.     {META|'F',        BINDFNC,    forwword},
  132.     {META|'G',        BINDFNC,    gotoline},
  133.     {META|'K',        BINDFNC,    bindtokey},
  134.     {META|'L',        BINDFNC,    lowerword},
  135.     {META|'M',        BINDFNC,    setgmode},
  136.     {META|'N',        BINDFNC,    gotoeop},
  137.     {META|'P',        BINDFNC,    gotobop},
  138.     {META|'Q',        BINDFNC,    fillpara},
  139.     {META|'R',        BINDFNC,    sreplace},
  140. #if    BSD || HPUX || VMS || SUN || AVIION
  141.     {META|'S',        BINDFNC,    bktoshell},
  142. #endif
  143.     {META|'U',        BINDFNC,    upperword},
  144.     {META|'V',        BINDFNC,    backpage},
  145.     {META|'W',        BINDFNC,    copyregion},
  146.     {META|'X',        BINDFNC,    namedcmd},
  147.     {META|'Y',        BINDFNC,    yank_pop},
  148.     {META|'Z',        BINDFNC,    quickexit},
  149.     {META|CTRL|'?',        BINDFNC,    delbword},
  150.  
  151. #if    MOUSE
  152.     {MOUS|'a',        BINDFNC,    movemd},
  153.     {MOUS|'b',        BINDFNC,    movemu},
  154.     {MOUS|'e',        BINDFNC,    mregdown},
  155.     {MOUS|'f',        BINDFNC,    mregup},
  156.     {MOUS|'1',        BINDFNC,    resizm},
  157. #endif 
  158.  
  159.     {ALTD|'B',        BINDFNC,    list_screens},
  160.     {ALTD|'C',        BINDFNC,    cycle_screens},
  161.     {ALTD|'F',        BINDFNC,    find_screen},
  162.     {ALTD|'S',        BINDFNC,    forwhunt},
  163.     {ALTD|'D',        BINDFNC,    delete_screen},
  164.     {ALTD|'R',        BINDFNC,    backhunt},
  165.  
  166.     {SPEC|'<',        BINDFNC,    gotobob},    /* Home */
  167.     {SPEC|'P',        BINDFNC,    backline},    /* up */
  168.     {SPEC|'Z',        BINDFNC,    backpage},    /* PgUp */
  169.     {SPEC|'B',        BINDFNC,    backchar},    /* left */
  170.  
  171.     {SPEC|'L',        BINDFNC,    reposition},    /* NP5 */
  172.  
  173.     {SPEC|'F',        BINDFNC,    forwchar},    /* right */
  174.     {SPEC|'>',        BINDFNC,    gotoeob},    /* End */
  175.     {SPEC|'N',        BINDFNC,    forwline},    /* down */
  176.     {SPEC|'V',        BINDFNC,    forwpage},    /* PgDn */
  177.     {SPEC|'C',        BINDFNC,    insspace},    /* Ins */
  178.     {SPEC|'D',        BINDFNC,    forwdel},    /* Del */
  179.  
  180.     {SPEC|CTRL|'B',     BINDFNC,    backword},    /* ctrl left */
  181.     {SPEC|CTRL|'F',     BINDFNC,    forwword},    /* ctrl right */
  182.     {SPEC|CTRL|'Z',     BINDFNC,    gotobop},    /* ctrl PgUp */
  183.     {SPEC|CTRL|'V',     BINDFNC,    gotoeop},    /* ctrl PgDn */
  184.  
  185. #if    WINDOW_MSWIN    /* IBM-CUA clipboard bindings */
  186.     {SPEC|CTRL|'C',     BINDFNC,    clipregion},    /* ctrl Ins */
  187.     {SPEC|SHFT|'C',     BINDFNC,    insertclip},    /* shift Ins */
  188.     {SPEC|SHFT|'D',     BINDFNC,    cutregion},    /* shift Del */
  189. #endif
  190.  
  191. #if ATKBD | OS2
  192.  
  193. /* The following keys are some of the extra ones that can be returned by an
  194.    AT-style keyboard.  By default we bind them to the same functions as the
  195.    equivalent PC keys.  However they, and the ones not mentioned here, are
  196.    available to the user for rebinding to functions of choice.
  197.  
  198.    See keyboard.c for a full list of available keys.
  199. */
  200.     {SPEC|'a',        BINDFNC,    gotobob},    /* grey Home */
  201.     {SPEC|'b',        BINDFNC,    backline},    /* grey up */
  202.     {SPEC|'c',        BINDFNC,    backpage},    /* grey PgUp */
  203.     {SPEC|'d',        BINDFNC,    backchar},    /* grey left */
  204.     {SPEC|'e',        BINDFNC,    reposition},    /* grey center */
  205.     {SPEC|'f',        BINDFNC,    forwchar},    /* grey right */
  206.     {SPEC|'g',        BINDFNC,    gotoeob},    /* grey End */
  207.     {SPEC|'h',        BINDFNC,    forwline},    /* grey down */
  208.     {SPEC|'i',        BINDFNC,    forwpage},    /* grey PgDn */
  209.     {SPEC|'j',        BINDFNC,    insspace},    /* grey Ins */
  210.     {SPEC|'k',        BINDFNC,    forwdel},    /* grey Del */
  211.  
  212.     {SPEC|CTRL|'c',        BINDFNC,    gotobop},    /* ctrl grey PgUp */
  213.     {SPEC|CTRL|'d',        BINDFNC,    backword},    /* ctrl grey left */
  214.     {SPEC|CTRL|'f',        BINDFNC,    forwword},    /* ctrl grey right */
  215.     {SPEC|CTRL|'i',        BINDFNC,    gotoeop},    /* ctrl grey PgDn */
  216.  
  217. #endif
  218.  
  219.     {SPEC|SHFT|'1',     BINDFNC,    cbuf1},
  220.     {SPEC|SHFT|'2',     BINDFNC,    cbuf2},
  221.     {SPEC|SHFT|'3',     BINDFNC,    cbuf3},
  222.     {SPEC|SHFT|'4',     BINDFNC,    cbuf4},
  223.     {SPEC|SHFT|'5',     BINDFNC,    cbuf5},
  224.     {SPEC|SHFT|'6',     BINDFNC,    cbuf6},
  225.     {SPEC|SHFT|'7',     BINDFNC,    cbuf7},
  226.     {SPEC|SHFT|'8',     BINDFNC,    cbuf8},
  227.     {SPEC|SHFT|'9',     BINDFNC,    cbuf9},
  228.     {SPEC|SHFT|'0',     BINDFNC,    cbuf10},
  229.  
  230. #if    HP150
  231.     {SPEC|32,        BINDFNC,    backline},
  232.     {SPEC|33,        BINDFNC,    forwline},
  233.     {SPEC|35,        BINDFNC,    backchar},
  234.     {SPEC|34,        BINDFNC,    forwchar},
  235.     {SPEC|44,        BINDFNC,    gotobob},
  236.     {SPEC|46,        BINDFNC,    forwpage},
  237.     {SPEC|47,        BINDFNC,    backpage},
  238.     {SPEC|82,        BINDFNC,    nextwind},
  239.     {SPEC|68,        BINDFNC,    openline},
  240.     {SPEC|69,        BINDFNC,    killtext},
  241.     {SPEC|65,        BINDFNC,    forwdel},
  242.     {SPEC|64,        BINDFNC,    ctlxe},
  243.     {SPEC|67,        BINDFNC,    refresh},
  244.     {SPEC|66,        BINDFNC,    reposition},
  245.     {SPEC|83,        BINDFNC,    help},
  246.     {SPEC|81,        BINDFNC,    deskey},
  247. #endif
  248.  
  249. #if    HP110
  250.     {SPEC|0x4b,        BINDFNC,    backchar},
  251.     {SPEC|0x4d,        BINDFNC,    forwchar},
  252.     {SPEC|0x48,        BINDFNC,    backline},
  253.     {SPEC|0x50,        BINDFNC,    forwline},
  254.     {SPEC|0x43,        BINDFNC,    help},
  255.     {SPEC|0x73,        BINDFNC,    backword},
  256.     {SPEC|0x74,        BINDFNC,    forwword},
  257.     {SPEC|0x49,        BINDFNC,    backpage},
  258.     {SPEC|0x51,        BINDFNC,    forwpage},
  259.     {SPEC|84,        BINDFNC,    cbuf1},
  260.     {SPEC|85,        BINDFNC,    cbuf2},
  261.     {SPEC|86,        BINDFNC,    cbuf3},
  262.     {SPEC|87,        BINDFNC,    cbuf4},
  263.     {SPEC|88,        BINDFNC,    cbuf5},
  264.     {SPEC|89,        BINDFNC,    cbuf6},
  265.     {SPEC|90,        BINDFNC,    cbuf7},
  266.     {SPEC|91,        BINDFNC,    cbuf8},
  267. #endif
  268.  
  269. #if    AMIGA
  270.     {SPEC|'?',        BINDFNC,    help},
  271.     {SPEC|'A',        BINDFNC,    backline},
  272.     {SPEC|'B',        BINDFNC,    forwline},
  273.     {SPEC|'C',        BINDFNC,    forwchar},
  274.     {SPEC|'D',        BINDFNC,    backchar},
  275.     {SPEC|'T',        BINDFNC,    backpage},
  276.     {SPEC|'S',        BINDFNC,    forwpage},
  277.     {SPEC|'a',        BINDFNC,    backword},
  278.     {SPEC|'`',        BINDFNC,    forwword},
  279.     {SPEC|'P',        BINDFNC,    cbuf1},
  280.     {SPEC|'Q',        BINDFNC,    cbuf2},
  281.     {SPEC|'R',        BINDFNC,    cbuf3},
  282.     {SPEC|'S',        BINDFNC,    cbuf4},
  283.     {SPEC|'T',        BINDFNC,    cbuf5},
  284.     {SPEC|'U',        BINDFNC,    cbuf6},
  285.     {SPEC|'V',        BINDFNC,    cbuf7},
  286.     {SPEC|'W',        BINDFNC,    cbuf8},
  287.     {SPEC|'X',        BINDFNC,    cbuf9},
  288.     {SPEC|'Y',        BINDFNC,    cbuf10},
  289.     {127,            BINDFNC,    forwdel},
  290. #endif
  291.  
  292. #if    TOS
  293.     {SPEC|CTRL|'5',        BINDFNC,    help},
  294. #endif
  295.  
  296. #if  WANGPC
  297.     SPEC|0xE0,        BINDFNC,    quit,        /* Cancel */
  298.     SPEC|0xE1,        BINDFNC,    help,        /* Help */
  299.     SPEC|0xF1,        BINDFNC,    help,        /* ^Help */
  300.     SPEC|0xE3,        BINDFNC,    ctrlg,        /* Print */
  301.     SPEC|0xF3,        BINDFNC,    ctrlg,        /* ^Print */
  302.     SPEC|0xC0,        BINDFNC,    backline,    /* North */
  303.     SPEC|0xD0,        BINDFNC,    gotobob,    /* ^North */
  304.     SPEC|0xC1,        BINDFNC,    forwchar,    /* East */
  305.     SPEC|0xD1,        BINDFNC,    gotoeol,    /* ^East */
  306.     SPEC|0xC2,        BINDFNC,    forwline,    /* South */
  307.     SPEC|0xD2,        BINDFNC,    gotobop,    /* ^South */
  308.     SPEC|0xC3,        BINDFNC,    backchar,    /* West */
  309.     SPEC|0xD3,        BINDFNC,    gotobol,    /* ^West */
  310.     SPEC|0xC4,        BINDFNC,    ctrlg,        /* Home */
  311.     SPEC|0xD4,        BINDFNC,    gotobob,    /* ^Home */
  312.     SPEC|0xC5,        BINDFNC,    filesave,    /* Execute */
  313.     SPEC|0xD5,        BINDFNC,    ctrlg,        /* ^Execute */
  314.     SPEC|0xC6,        BINDFNC,    insfile,    /* Insert */
  315.     SPEC|0xD6,        BINDFNC,    ctrlg,        /* ^Insert */
  316.     SPEC|0xC7,        BINDFNC,    forwdel,    /* Delete */
  317.     SPEC|0xD7,        BINDFNC,    killregion,    /* ^Delete */
  318.     SPEC|0xC8,        BINDFNC,    backpage,    /* Previous */
  319.     SPEC|0xD8,        BINDFNC,    prevwind,    /* ^Previous */
  320.     SPEC|0xC9,        BINDFNC,    forwpage,    /* Next */
  321.     SPEC|0xD9,        BINDFNC,    nextwind,    /* ^Next */
  322.     SPEC|0xCB,        BINDFNC,    ctrlg,        /* Erase */
  323.     SPEC|0xDB,        BINDFNC,    ctrlg,        /* ^Erase */
  324.     SPEC|0xDC,        BINDFNC,    ctrlg,        /* ^Tab */
  325.     SPEC|0xCD,        BINDFNC,    ctrlg,        /* BackTab */
  326.     SPEC|0xDD,        BINDFNC,    ctrlg,        /* ^BackTab */
  327.     SPEC|0x80,        BINDFNC,    ctrlg,        /* Indent */
  328.     SPEC|0x90,        BINDFNC,    ctrlg,        /* ^Indent */
  329.     SPEC|0x81,        BINDFNC,    ctrlg,        /* Page */
  330.     SPEC|0x91,        BINDFNC,    ctrlg,        /* ^Page */
  331.     SPEC|0x82,        BINDFNC,    ctrlg,        /* Center */
  332.     SPEC|0x92,        BINDFNC,    ctrlg,        /* ^Center */
  333.     SPEC|0x83,        BINDFNC,    ctrlg,        /* DecTab */
  334.     SPEC|0x93,        BINDFNC,    ctrlg,        /* ^DecTab */
  335.     SPEC|0x84,        BINDFNC,    ctrlg,        /* Format */
  336.     SPEC|0x94,        BINDFNC,    ctrlg,        /* ^Format */
  337.     SPEC|0x85,        BINDFNC,    ctrlg,        /* Merge */
  338.     SPEC|0x95,        BINDFNC,    ctrlg,        /* ^Merge */
  339.     SPEC|0x86,        BINDFNC,    setmark,    /* Note */
  340.     SPEC|0x96,        BINDFNC,    ctrlg,        /* ^Note */
  341.     SPEC|0x87,        BINDFNC,    ctrlg,        /* Stop */
  342.     SPEC|0x97,        BINDFNC,    ctrlg,        /* ^Stop */
  343.     SPEC|0x88,        BINDFNC,    forwsearch,    /* Srch */
  344.     SPEC|0x98,        BINDFNC,    backsearch,    /* ^Srch */
  345.     SPEC|0x89,        BINDFNC,    sreplace,    /* Replac */
  346.     SPEC|0x99,        BINDFNC,    qreplace,    /* ^Replac */
  347.     SPEC|0x8A,        BINDFNC,    ctrlg,        /* Copy */
  348.     SPEC|0x9A,        BINDFNC,    ctrlg,        /* ^Copy */
  349.     SPEC|0x8B,        BINDFNC,    ctrlg,        /* Move */
  350.     SPEC|0x9B,        BINDFNC,    ctrlg,        /* ^Move */
  351.     SPEC|0x8C,        BINDFNC,    namedcmd,    /* Command */
  352.     SPEC|0x9C,        BINDFNC,    spawn,        /* ^Command */
  353.     SPEC|0x8D,        BINDFNC,    ctrlg,        /* ^ */
  354.     SPEC|0x9D,        BINDFNC,    ctrlg,        /* ^^ */
  355.     SPEC|0x8E,        BINDFNC,    ctrlg,        /* Blank */
  356.     SPEC|0x9E,        BINDFNC,    ctrlg,        /* ^Blank */
  357.     SPEC|0x8F,        BINDFNC,    gotoline,    /* GoTo */
  358.     SPEC|0x9F,        BINDFNC,    usebuffer,    /* ^GoTo */
  359. #endif
  360.  
  361.     {CTRL|'?',        BINDFNC,    backdel},
  362.  
  363.     {0,            BINDNUL,    NULL}
  364. };
  365.